How to know a record has been updated, then reset the flag?

Поиск
Список
Период
Сортировка
От Jim Archer
Тема How to know a record has been updated, then reset the flag?
Дата
Msg-id B3A7E140F40D9589D1AA2DCF@[192.168.3.50]
обсуждение исходный текст
Ответы Re: How to know a record has been updated, then reset the flag?  (Michael Glaesemann <grzm@myrealbox.com>)
Re: How to know a record has been updated, then reset  (Csaba Nagy <nagy@ecircle-ag.com>)
Re: How to know a record has been updated, then reset the flag?  (Tom Lane <tgl@sss.pgh.pa.us>)
Список pgsql-general
Hi All...

I'm been fighting this problem for a few days now, and it seems like it
should be simple.  But the solution has eluded me so far...

I need to flag a record when it is updated or when it is a new insert.
Then I SELECT for the changed records and do something not related to
Postgres.  Easy enough, I created a trigger procedure and fired it on
INSERT OR UPDATE and modify NEW to set the flag field to true.

But then the problem is how do I reset the trigger?  If I do an UPDATE the
trigger fires again.  I thought I could check for the flag field being NULL
and that works for an INSERT, but apparently if it is an update NEW
contains the existing value of the field.

I am trying to avoid modifying the cost the needs to set the flags (I can
change the schema), but I have full control over the code that has to reset
them.  Is there a way I can update a record without firing the trigger, or
by bypassing it?  This is a multi-user environment, so I can't really drop
the trigger and readd it.

Is there a solution not related to this?

I would appreciate some help, thanks very much!



В списке pgsql-general по дате отправления:

Предыдущее
От: "Harry Smith"
Дата:
Сообщение: PROPOSAL: Usenet Discussion Repost
Следующее
От: Michael Glaesemann
Дата:
Сообщение: Re: How to know a record has been updated, then reset the flag?